package logic.common.game;

import fileHandling.language.Lang;
import fileHandling.language.interfaces.LoadingScreen;
import fileHandling.language.options.OptionValues;

public enum GameMode {
	
	TeamDeathmatch, Conquest, Destruction;
	
	public GameSetup getGameSetup(Game game) {
		switch(this) {
			case TeamDeathmatch: return new TDMSetup(game);
			case Conquest: return new ConquestSetup(game);
			case Destruction: return new DestructionSetup(game);
		}
		return null;
	}
	
	public Lang getGameModeDescription() {
		switch(this) {
			case TeamDeathmatch: return LoadingScreen.TDMDescr;
			case Conquest: return LoadingScreen.ConquestDescr;
			case Destruction: return LoadingScreen.DestructionDescr;
		}
		return null;
	}
	
	public Lang getGameModeOptionValue() {
		switch(this) {
			case TeamDeathmatch: return OptionValues.TeamDeathmatch;
			case Conquest: return OptionValues.Conquest;
			case Destruction: return OptionValues.Destruction;
		}
		return null;
	}
}